#!/bin/sh

set -ex

die () { echo "$@" ; cleanup ; exit 1; }

cleanup() {
  rm -rf "$(nvm_alias_path)/foo"
}

: nvm.sh
\. ../../nvm.sh

\. ../common.sh

nvm_make_alias foo foo

try_err nvm use foo
EXPECTED_OUTPUT='The alias "foo" leads to an infinite loop. Aborting.'
[ "_${CAPTURED_STDERR}" = "_${EXPECTED_OUTPUT}" ] \
  || die "'nvm use foo' did not output >${EXPECTED_OUTPUT}<; got >${CAPTURED_STDERR}<"
[ "_$CAPTURED_EXIT_CODE" = "_8" ] || die "Expected exit code 8; got ${CAPTURED_EXIT_CODE}"

try_err nvm use --silent foo
EXPECTED_OUTPUT=''
[ "_${CAPTURED_STDERR}" = "_${EXPECTED_OUTPUT}" ] \
  || die "'nvm use --silent foo' did not output >${EXPECTED_OUTPUT}<; got >${CAPTURED_STDERR}<"
[ $CAPTURED_EXIT_CODE -eq 8 ] || die "Expected exit code 8 from 'nvm use --silent foo'; got ${CAPTURED_EXIT_CODE}"

cleanup
